The present invention relates to industrial control systems and, in particular, to a human/machine interface for the programming and monitoring of control programs used for the control of factories and the like.
Industrial controllers such as those described in U.S. Pat. Nos. 3,810,118; 3,942,158; 4,165,534; and 4,442,504 are high-speed computers that may be connected to industrial equipment, such as automated assembly lines or machine tools, to operate such equipment in accordance with a stored control program. The stored program includes instructions, which when executed, examine the condition of selected inputs to the controller from sensing devices on the controlled equipment, and energize or de-energize selected actuators or outputs from the controller to operate devices on the controlled equipment.
Inputs to the industrial controller may be discrete binary signals, such as those from switches, which may detect limits of process variables such as motion, temperature, time, or other quantities, or the inputs may be analog measures of process variables which are generally then converted to digital words for processing, or the inputs may be multi-variable information.
Similarly, the outputs of the industrial controller may be either discrete binary signals as produced, typically, by mechanical or solid state relays; analog outputs produced by means of a digital to analog converter; or multi-variable commands. Some of the inputs and outputs to the centralized controller may be remotely located and connected to the controller by means of a digital communications link. Typically, the network connects the controller with a remote I/O rack at which a number of inputs and outputs are clustered.
Current programming tools may display a view of the instructions of the control program as graphical elements (such as relay coils and contacts or function blocks) to make the control program easier to understand. Certain instructions may include captions indicating the state of their data or a view of the data may be displayed in table form. Animated two-dimensional representations of machines, including for example, pumps or motors or reaction vessels, have been used to provide a view of certain process variables such as "on" or "off" states or liquid level or temperature.
Present generations of industrial controllers may be extremely complex with thousands of control points distributed over a factory having dozens of machines coordinated through the operation of the control program. Unlike conventional computer programs of equal complexity, the operation of the control program is highly dependent on intervening real-time physical processes (the operation of the machines of the factory). While the state of this controlled equipment is largely defined by its input and output data, viewing and understanding this data in the context of the control program is difficult. Further, each of the controlled machines normally includes some processing capability so the data to the machine may not directly represent its state. To the extent that the control program is divided among a central processor and machines themselves, gaining a complete understanding of the control process as is necessary for design and monitoring of the control process is difficult.
Current limitations in representing large control programs and its associated data creates an effective limit to the complexity of control systems even as larger control structures coordinating the operations of larger systems are demanded. What is needed is a way to integrate views of large and possibly distributed control programs, their associated control data and the actual physical processes in a logical and intuitive manner.